package studentInterface;

import java.io.IOException;
import java.rmi.Remote;
import java.sql.Date;
import java.sql.SQLException;
import java.util.List;

import com.registerClient.model.Student;
import com.registerClient.model.Course;
import com.registerClient.model.Subject;

public interface IStudyingService extends Remote{
	// get marks and response units of all of student's subject to calculate "diem tich luy"
//		public List<Units> getMarkOfAllSubjects(String studentID) throws SQLException;
		
		// tính điểm tích lũy của sinh viên 
		public double getOverAllMarkOfStudent(String studentID) throws SQLException;
		
		public int getSemester(String studentID);
		
		// lấy thông tin các môn học của sinh viên 
		public List<Subject> getSubjects(String studentID, int semester) throws SQLException;
		
		// Student register the new course
		public boolean addNewStudying(String subjectID, Course course, Student studentm, Date registerDate) throws SQLException;
		
		// Manager update new info to course such as : mark of student...?? vo ly
		public boolean updateStudying(String subjectID, Course course, Student student) throws SQLException;
		
		// Update mark for sinh vien 
		public boolean updateMark(String studentID, String subjectID, String courseID) throws SQLException;
		
		// Delete course of student when they register study again
		public boolean deleteStudying(String studentID, String subjectID, String courseID) throws SQLException;
	
}
